package com.jy.wms.service;

import com.github.pagehelper.Page;
import com.github.pagehelper.PageHelper;
import com.jy.wms.common.base.BaseService;
import com.jy.wms.dao.SysDictionaryMapper;
import com.jy.wms.pojo.SysDictionary;
import org.springframework.stereotype.Service;

import java.util.List;

/**
* @ClassName: SysDictionaryService.java
* @Description: TODO(这里用一句话描述这个类的作用)
* @Author liyi
* @Date Fri Sep 01 13:47:13 CST 2017
*/

@Service
public class SysDictionaryService extends BaseService<SysDictionaryMapper,SysDictionary> {

 /**
 * 插入一条记录
 * @param entity 实体对象
 * @return int
 */
public Integer baseInsert(SysDictionary entity ){
     return dao.baseInsert( entity );
}

/**
* 插入一条记录（匹配有值的字段）
* @param entity 实体对象
* @return int
*/
public Integer baseInsertSelective(SysDictionary entity ){
     return dao.baseInsertSelective( entity );
}

/**
* 删除（根据主键ID删除）
* @param id 主键
* @return int
*/
public Integer baseDeleteByPrimaryKey(String id ){
     return dao.baseDeleteByPrimaryKey( id );
}

    /**
     * 根据传入的类型及比对字段的value获取结果名称
     * @param type 字典管理表字典分组
     * @param value 字段的结果值
     * @return 结果值对应的中文
     */
    public String getTypeName(String type, String value){
        SysDictionary sysDictionary = dao.baseSelectByTypeAndValue(type,value);
        return sysDictionary.getD_name();
}

/**
* 删除（根据ID 批量删除）
* @param idList 主键ID列表
* @return int
*/
public Integer baseDeleteBathPrimaryKeys(List<String> idList){
     return dao.baseDeleteBathPrimaryKeys( idList );
}

/**
* 分页查询
* @param entity 实体
* @return Page<SysDictionary>
*/
public Page<SysDictionary> baseSelectPage(SysDictionary entity ){
    PageHelper.startPage(entity.getPage(),entity.getRows());
    return (Page<SysDictionary>)dao.baseSelectPage( entity );
}

/**
* 查询（根据主键ID查询）
* @param id 主键ID
* @return SysDictionary
*/
public SysDictionary baseSelectByPrimaryKey(String id ){
     return dao.baseSelectByPrimaryKey( id );
}

    /**
     * 查询（根据d_type查询）
     * @param type 字典分组名称
     * @return SysDictionary
     */
    public List<SysDictionary> baseSelectByType(String type ){
        return dao.baseSelectByType( type );
    }

    /**
     * 查询（根据d_type查询,子库查询ｌｘ字典）
     * @param type 主键ID
     * @return User
     */
    public List<SysDictionary> baseSelectByZkType(String type){
        return dao.baseSelectByZkType(type);
    }

/**
* 查询（根据ID 批量查询）
* @param idList 主键ID列表
* @return list
*/
public Integer baseSelectBathPrimaryKeys(List<SysDictionary> idList ){
     return dao.baseSelectBathPrimaryKeys( idList );
}

/**
*修改 （匹配有值的字段）
* @param entity 主键ID列表
* @return int
*/
public Integer baseUpdateByPrimaryKeySelective(SysDictionary entity ){
     return dao.baseUpdateByPrimaryKeySelective( entity );
}

/**
*修改（根据主键ID修改）
* @param entity 主键ID列表
* @return int
*/
public Integer baseUpdateByPrimaryKey(SysDictionary entity ){
     return dao.baseUpdateByPrimaryKey( entity );
}
}
